package com.chapter13.homework.demo2;


import java.util.ArrayList;
import java.util.LinkedList;

/**
 * 使用ArrayList实现队列这种数据结构，并且让类实现Iterable接
 * 口，使之成为可循环遍历的类。
 */
public class MyQueue<E> {
    private ArrayList<E> list = new ArrayList<E>();


    public int size(){
        return list.size();
    }


    //向队尾添加元素
    public void offer(E obj){
        list.add(obj);
    }


    //判断队列中是否有元素
    public boolean isEmpty(){
        return list.isEmpty();
    }

    //查看队首元素但不删除
    public E peek(){
        return list.get(0);
    }


    //获取并删除队首元素
    public E poll() throws Exception {
        if(!isEmpty()){
           throw new Exception("队列为空");
        }
        return list.remove(0);
    }
    //todo

}
